Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2005
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Wimbledon - London U.S. Open - New York Astana Open - Astana Shanghai Rolex Masters - Shanghai Tiburon Challenger Fairfield Challenger European Open - Antwerp Rolex Paris Masters - Paris Sofia Open - Sofia Barcelona Open Banc Sabadell - Barcelona ASB Classic - Auckland Cordoba Open - Cordoba Australian Open - Melbourne Indian Wells 1 Challenger Bengaluru Challenger Pune Challenger Miami Open - Miami BNP Paribas Open - Indian Wells Davis Cup, World Group, Q, CAN-KOR 3-1 Rio Open - Rio de Janeiro Movistar Chile Open - Santiago Phoenix Challenger Grand Prix Hassan II - Marrakech San Luis Potosi Challenger Internazionali BNL d'Italia - Rome Mexico City Challenger Mutua Madrid Open - Madrid Gonet Geneva Open - Geneva Cuernavaca Challenger French Open - Paris National Bank Open - Montreal Mallorca Championships - Mallorca Wimbledon - London Nordea Open - Bastad Braunschweig Challenger Winnipeg Challenger Generali Open - Kitzbuhel Seville Challenger Hangzhou Open - Hangzhou U.S. Open - New York China Open - Beijing Rolex Paris Masters - Paris Shanghai Rolex Masters - Shanghai European Open - Antwerp Drummondville Challenger Davis Cup, World Group, Q, SUI-ESP 1-3 BNP Paribas Open - Indian Wells Abierto Mexicano Telcel - Acapulco Argentina Open - Buenos Aires Hong Kong Tennis Open - Hong Kong ASB Classic - Auckland Australian Open - Melbourne Miami Open - Miami Barcelona Open Banc Sabadell - Barcelona Internazionali BNL d'Italia - Rome National Bank Open - Toronto Grand Prix Hassan II - Marrakech National Bank Open - Toronto Braunschweig Challenger Wimbledon - London EFG Swiss Open - Gstaad Cincinnati Open - Cincinnati Canada F1 Canada F2 Canada F3 Canada F1 Canada F2 Canada F3 Czech Republic F1 Germany F6 Serbia F6 Italy F29 Germany F21 Germany F22 Nicaragua F1 El Salvador F2 Mexico F2 USA F4 USA F5 Canada F2 Canada F3 Mexico F3 Mexico F4 Mexico F5 Mexico F6 Usa F16 Usa F17 Romania F14 Romania F15 Italy F28 Italy F29 Italy F30 Mexico F12 Mexico F14 Mexico F15 Usa F5 Canada F2 Canada F3 Usa F8 Mexico F2 Usa F16 USA F17 USA F18 Mexico F6 Spain F31 Spain F32 Mexico F7 Canada F4 Canada F5 Spain F6 Spain F7 Canada F2 Spain F9 Spain F10 USA F8 Spain F11 USA F9 Spain F12 Spain F13 Spain F15 Korea F1 Korea F2 Morocco F4 Italy F18 Canada F4 Spain F28 Spain F29 Spain F31 Spain F38 Spain F39 Spain F41 Spain F1 Spain F2 Spain F4 Spain F5 Spain F6 Croatia F5 Italy F3 Italy F5 Spain F10 Spain F11 Spain F12 Spain F14 Poland F3 Italy F13 France F13 Czech Republic F5 Spain F22 Poland F5 Spain F26 Spain F27 Spain F30 Spain F32 Morocco F6 Morocco F7 Morocco F9 Spain F2 Spain F3 Spain F4 Spain F6 Spain F7 Spain F8 Spain F19 Italy F22 Spain F32 Spain F33 Spain F34 Spain F36 Spain F38 Egypt F3 Spain F1 Spain F3 Spain F4 Italy F6 Italy F7 Spain F29 Spain F30 Odlum Brown Vancouver Open - Vancouver Oldum Brown Vancouver Open - Vancouver Polska Energia Open - Bytom Challenger Banque Nationale - Granby Moncton Men's Challenger - Moncton Vancouver Challenger Puebla Challenger Salinas Challenger Dallas Challenger Rimouski Challenger Leon Challenger Savannah Challenger Sarasota Challenger Cremona Challenger Nottingham Challenger Lexington Challenger Granby Challenger Seoul Challenger Eckental Challenger Aachen Challenger Honolulu Challenger Caloundra Challenger Rimouski Challenger Tallahassee Challenger Unicredit Czech Open 2007 - Prostejov Leon Challenger Busan Challenger Guadalajara Challenger Granby Challenger Vancouver Challenger Bytom Challenger Seville Challenger Madrid Challenger Tiburon Challenger Knoxville Challenger Champaign Challenger Heilbronn Challenger Guadalajara Challenger Rimouski Challenger Le Gosier Challenger Tallahassee Challenger Sarasota Challenger Savannah Challenger Nottingham Challenger Granby Challenger Tashkent Challenger Geneva Challenger Ortisei Challenger Sacramento Challenger Marbella Challenger Odlum Brown Vancouver Open - Vancouver Tulsa Challenger Kosice Challenger Bytom Challenger Constanta Challenger Dallas Challenger Tashkent Challenger Granby Challenger Rimouski Challenger Guadalajara Challenger Mexico City Challenger Rome Challenger Johannesburg Challenger Nottingham Challenger Nottingham-2 Challenger Tanger Challenger Scheveningen Challenger Poznan Challenger Orbetello Challenger Vancouver Challenger Segovia Challenger Honolulu Challenger Como Challenger Brasov Challenger Winnetka Challenger Casablanca Challenger Irving Challenger Bordeaux Challenger Vicenza Challenger Furth Challenger Prague Challenger Mohammedia Challenger Marburg Challenger Todi Challenger San Benedetto Challenger Oberstaufen Challenger Liberec Challenger Prague Challenger Cordenons Challenger Alphen Challenger Seville Challenger Meknes Challenger Kenitra Challenger National Bank Men's Rimouski Challenger - Rimouski Guayaquil Challenger Lima Challenger Casablanca Challenger Bucaramanga Challenger Santo Domingo Challenger Pozoblanco Challenger Guangzhou Challenger Shenzhen Challenger Napoli Challenger Mersin Challenger Bordeaux Challenger Mestre Challenger Caltanissetta Challenger Perugia Challenger Brasov Challenger Padova Challenger San Benedetto Challenger Liberec Challenger Prague Challenger Cordenons Challenger Manerbio Challenger Como Challenger Meknes Challenger Kenitra Challenger Rome Challenger Mohammedia Challenger Casablanca Challenger Guayaquil Challenger Buenos Aires Challenger Mendoza Challenger Buenos Aires Challenger Rio De Janeiro Challenger Santo Domingo Challenger Santiago Challenger Guadalajara Challenger Vancouver Challenger Napoli Challenger Barletta Challenger Bordeaux Challenger Furth Challenger Lyon Challenger Perugia Challenger Milan Challenger Bastad Challenger Cortina Challenger Fano Challenger Meerbusch Challenger Como Challenger Genova Challenger Meknes Challenger Kenitra Challenger Mohammedia Challenger Casablanca Challenger Bratislava Challenger Noumea Challenger Maui Challenger Shenzhen Challenger Guadalajara Challenger Leon Challenger San Francisco Challenger Sophia Antipolis Challenger Taipei City Challenger Ostrava Challenger Gimcheon Challenger Seoul Challenger Busan Challenger Vicenza Challenger Prostejov Challenger Lisbon Challenger Poprad Tatry Challenger Bastad Challenger San Benedetto Challenger Cortina Challenger Biella Challenger Cordenons Challenger Manerbio Challenger Seville Challenger Banja Luka Challenger Sibiu Challenger Rome Challenger Cali Challenger Lima Challenger Guayaquil Challenger Montevideo Challenger Santiago Challenger Rio De Janeiro Challenger Rennes Challenger Budapest Challenger Indian Wells Challenger Drummondville Challenger Marbella Challenger Alicante Challenger Anning Challenger Seoul Challenger Gimcheon Challenger Busan Challenger Bordeaux Challenger Prostejov Challenger Lyon Challenger L'Aquila Challenger Braunschweig Challenger Vancouver Challenger Chicago Challenger Szczecin Challenger Biella Challenger Florence Challenger Barcelona Challenger Brest Challenger Canberra Challenger Phoenix Challenger Alicante Challenger Murcia Challenger Lisbon Challenger Poznan Challenger Granby Challenger Vancouver Challenger Genova Challenger Szczecin Challenger Barcelona Challenger Las Vegas Challenger Brest Challenger Charlottesville Challenger Knoxville Challenger Noumea Challenger Bendigo Challenger Calgary Challenger Todi Challenger Aix En Provence Challenger Marbella Challenger Guayaquil Challenger Lima Challenger Campinas Challenger Santiago Challenger Marbella Challenger Belgrade Challenger Aix En Provence Challenger Salzburg-Anif Challenger Luedenscheid Challenger Seville Challenger Szczecin Challenger Murcia Challenger Charlottesville Challenger Knoxville Challenger Forli 2 Challenger Forli 3 Challenger Quimper Challenger Pau Challenger Gran Canaria Challenger Marbella Challenger Turin Challenger Madrid Challenger Tunis Challenger Perugia Challenger Ilkley Challenger Montechiarugolo - Parma Challenger Oeiras 3 Challenger Malaga Challenger Salzburg Challenger Amersfoort Challenger Pozoblanco Challenger Winnipeg Challenger Santo Domingo Challenger Vancouver Challenger Seville Challenger Szczecin Challenger Parma Challenger Mouilleron-Le-Captif Challenger Ismaning Challenger Las Vegas Challenger Calgary Challenger Drummondville Challenger Valencia Challenger Quimper Challenger Koblenz Challenger Cherbourg Challenger Phoenix Challenger Charleston Challenger Seville Challenger Challenger Natrel Presented by National Bank - Granby Australian Open - Melbourne Rome Challenger Malaga Challenger Granby Challenger Cordenons Challenger Seville Challenger Bad Waltersdorf Challenger Seville Challenger Bordeaux Challenger Columbus Challenger U.S. Open (juniors) Granby Challenger Granby Challenger Bad Waltersdorf Challenger Salzburg Challenger Winnipeg Challenger Calgary Challenger Indian Wells 2 Challenger Gerry Weber Open - Halle St. Petersburg Open - St. Petersburg Open de Tenis Comunidad Valenciana - Valencia Aircel Chennai Open - Chennai Open Sud de France - Montpellier Regions Morgan Keegan Championships - Memphis Delray Beach International Tennis Championships - Delray Beach Open de Nice Cote d'Azur - Nice AEGON Championships - London AEGON International - Eastbourne Campbell's Hall of Fame Tennis Championships - Newport St. Petersburg Open - St. Petersburg Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo Erste Bank Open - Vienna Valencia Open - Valencia SAP Open - San Jose U.S. National Indoor Tennis Championships - Memphis Delray Beach International Tennis Championships - Delray Beach Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Hall of Fame Tennis Championships - Newport Claro Open Colombia - Bogota Malaysian Open - Kuala Lumpur China Open - Beijing Erste Bank Open - Vienna Swiss Indoors Basel - Basel Aircel Chennai Open - Chennai Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona BRD Nastase Tiriac Trophy - Bucharest Portugal Open - Oeiras AEGON Championships - London Topshelf Open - 's-Hertogenbosch Claro Open Colombia - Bogota BB&T Atlanta Open - Atlanta Citi Open - Washington Shenzhen Open - Shenzhen China Open - Beijing Erste Bank Open - Vienna Swiss Indoors Basel - Basel Apia International - Sydney Ecuador Open - Quito ABN AMRO World Tennis Tournament - Rotterdam Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai Argentina Open - Buenos Aires Barcelona Open BancSabadell - Barcelona BMW Open - Munich Topshelf Open - 's-Hertogenbosch Gerry Weber Open - Halle Aegon Nottingham Open - Nottingham BB&T Atlanta Open - Atlanta Citi Open - Washington Moselle Open - Metz Malaysian Open - Kuala Lumpur China Open - Beijing Valencia Open - Valencia Millennium Estoril Open - Estoril Aircel Chennai Open - Chennai ASB Classic - Auckland Ecuador Open - Quito ABN AMRO World Tennis Tournament - Rotterdam Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai Brasil Open - Sao Paulo Barcelona Open BancSabadell - Barcelona TEB BNP Paribas Istanbul Open - Istanbul BMW Open - Munich Topshelf Open - 's-Hertogenbosch AEGON Championships - London Aegon Nottingham Open - Nottingham SkiStar Swedish Open - Bastad Citi Open - Washington Generali Open - Kitzbuhel Chengdu Open - Chengdu Rakuten Japan Open - Tokyo Swiss Indoors Basel - Basel Qatar ExxonMobil Open - Doha Ecuador Open - Quito Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Delray Beach Open - Delray Beach Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Ricoh Open - 's-Hertogenbosch Gerry Weber Open - Halle AEGON International - Eastbourne BB&T Atlanta Open - Atlanta Citi Open - Washington Rakuten Japan Open - Tokyo European Open - Antwerp Swiss Indoors Basel - Basel Chengdu Open - Chengdu Maharashtra Open - Pune Ecuador Open - Quito Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Open Parc - Lyon Ricoh Open - 's-Hertogenbosch Gerry Weber Open - Halle Antalya Cup - Antalya SkiStar Swedish Open - Bastad Hall of Fame Open - Newport Swiss Open - Gstaad Citi Open - Washington Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem Chengdu Open - Chengdu China Open - Beijing European Open - Antwerp Swiss Indoors Basel - Basel Tata Open Maharashtra - Pune Cordoba Open - Cordoba Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Barcelona Open Banc Sabadell - Barcelona Fever-Tree Championships - London Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad Swiss Open - Gstaad Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu China Open - Beijing Kremlin Cup - Moscow ASB Classic - Auckland Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Open 13 Provence - Marseille Santiago Open - Santiago St. Petersburg Open - St. Petersburg Erste Bank Open - Vienna Forte Village Sardegna Open - Sardinia Sofia Open - Sofia Great Ocean Road Open - Melbourne Cordoba Open - Cordoba Argentina Open - Buenos Aires Qatar ExxonMobil Open - Doha Chile Dove Men+Care Open - Santiago Dubai Duty Free Tennis Championships - Dubai Serbia Open - Belgrade Millennium Estoril Open - Estoril Noventi Open - Halle Mallorca Championships - Mallorca Nature Valley International - Eastbourne Hall of Fame Open - Newport Nordea Open - Bastad Citi Open - Washington Moselle Open - Metz Sofia Open - Sofia European Open - Antwerp Erste Bank Open - Vienna Anytech365 Andalucia Open - Marbella Belgrade 2 - Belgrade Adelaide International 1 - Adelaide Adelaide International 2 - Adelaide Cordoba Open - Cordoba Argentina Open - Buenos Aires Dallas Open - Dallas Rio Open - Rio de Janeiro Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril Swiss Open - Gstaad Plava Laguna Croatia Open - Umag Tel Aviv Watergen Open - Tel Aviv Firenze Open - Florence Tennis Napoli Open - Naples Adelaide International 1 - Adelaide Tata Open Maharashtra - Pune Adelaide International 2 - Adelaide Cordoba Open - Cordoba Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Chile Dove Men+Care Open - Santiago Grand Prix Hassan II - Marrakech BMW Open - Munich Gonet Geneva Open - Geneva Terra Wortmann Open - Halle Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Citi Open - Washington Mallorca Championships - Mallorca Moselle Open - Metz Dallas Open - Dallas Plava Laguna Croatia Open - Umag Open Sabadell Atlantico - Barcelona EFG Swiss Open - Gstaad Generali Open - Kitzbuhel Plava Laguna Croatia Open - Umag Dubai Duty Free Tennis Championships - Dubai Rogers Masters - Toronto Rogers Cup - Montreal Rogers Cup - Toronto Rogers Cup - Montreal BNP Paribas Open - Indian Wells Mutua Madrilena Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati BNP Paribas Open - Indian Wells Internazionali BNL d'Italia - Rome Rogers Cup - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Rogers Cup - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Rogers Cup - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Rogers Cup - Toronto Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Coupe Rogers - Montreal Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Internazionali BNL d'Italia - Rome Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid National Bank Open - Montreal BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Australian Open - Melbourne French Open - Paris Davis Cup, Group 1, 1R, CAN-MEX 4-1 Davis Cup, Group I, 2R, ECU-CAN 2-3 Davis Cup, World Group, PO, ISR-CAN 2-3 Davis Cup, World Group, 1R, CAN-FRA 1-4 Davis Cup, World Group, PO, CAN-RSA 4-1 Davis Cup, World Group, QF, CAN-ITA 3-1 Davis Cup, World Group, SF, SRB-CAN 3-2 Davis Cup, World Group, PO, CAN-COL 3-2 Hopman Cup - Perth Davis Cup, World Group, 1R, CAN-JPN 3-2 Davis Cup, World Group, 1R, FRA-CAN 5-0 Davis Cup, World Group, PO, CAN-CHI 5-0 Davis Cup, World Group, 1R, CAN-GBR 2-3 Hopman Cup - Perth Davis Cup, World Group, 1R, CRO-CAN 3-1 Davis Cup, Finals, Group F Davis Cup, Finals, QF, AUS-CAN 1-2 Davis Cup, Finals, SF, RUS-CAN 1-2 Davis Cup, Finals, Group B Davis Cup, Group B, Valencia Davis Cup, Group A, Bologna French Open (juniors) Australian Open (juniors) French Open (juniors) Wimbledon (juniors) U.S. Open - New York All Lower level tournaments Olympics - London Olympics - Rio de Janeiro Australian Open (juniors) Olympics - Tokyo Wimbledon (juniors)